﻿using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Triunfadores.BusinessEntities;
using Triunfadores.Repository;

namespace Triunfadores.Test
{
    [TestClass]
    public class BeneficiarioTest
    {
        [TestMethod]
        public void ObtenerTodosLosBeneficiariosTest()
        {
            BeneficiarioRepository target = new BeneficiarioRepository();
            IEnumerable<Beneficiario> actual;
            actual = target.ObtenerTodosLosBeneficiarios();
            Assert.IsTrue(actual.Count() >= 1);
        }

        [TestMethod]
        public void ObtenerBeneficiarioPorDniTest()
        {
            BeneficiarioRepository target = new BeneficiarioRepository();
            var dni = "47701561";
            Beneficiario actual;
            actual = target.FindSearchingFromBeneficiarioByDni(dni);
            Assert.IsTrue(actual.Dni == "47701561");
            //Assert.IsTrue(actual.Count >= 1);
            //Assert.IsNotNull(actual);
        }

        [TestMethod]
        public void AddBeneficiarioTest()
        {
            BeneficiarioRepository beneficiarioRepository = new BeneficiarioRepository();
            var ListEsperado = (IEnumerable<Beneficiario>)beneficiarioRepository.ObtenerTodosLosBeneficiarios();
            Beneficiario beneficiario = new Beneficiario()
            {
                Id = 3,
                Apellidos = "Rabanal Sangay",
                Direccion = "Jr. San Juan 189",
                Dni = "47701563",
                Email = "jhanpierd@gmail.com",
                Nombres = "Jhan Pierd",
                Telefono = "976150615"
            };
            beneficiarioRepository.AddBeneficiario(beneficiario);
            var ListaCTUAL = (IEnumerable<Beneficiario>)beneficiarioRepository.ObtenerTodosLosBeneficiarios();
            Assert.AreEqual(ListEsperado.Count() + 1, ListaCTUAL.Count(), "Error ");
        }
    }
}
